package com.zjz.springcloud.config;

import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

/**
 * Created with IntelliJ IDEA.
 *
 * @Author: zjz
 * @Date: 2021/10/05/6:55
 * @Description:
 * @Target:配置文件创建一个Template的Bean
 */

@Configuration   // boot里的注解--相当于->spring application.xml
public class ConfigBean {

    // 通过RestTemplate拿的服务
    // IRule
    // AvailabilityFilteringRule  先过滤掉崩溃(跳闸),访问慢的服务,对剩下的轮询
    // RoundRobinRule 默认的轮询
    // RandomRule 随机
    // RetryRule 会先按照轮询获取服务,如果服务获取失败,则在指定时间内重试
    @Bean
    @LoadBalanced     // 开启负载均衡 ribbon
    public RestTemplate getRestTemplate(){
        return new RestTemplate();
    }


}
